home *** CD-ROM | disk | FTP | other *** search
/ Wonky Flux Batch 2019 02 / Wonky_Flux_Batch_2019-02.zip / Wonky Flux Batch 2019-02 / 024 - Big U Macroworks.dsk / MAIN.MENU.bas < prev    next >
BASIC Source File  |  2019-02-16  |  11KB  |  130 lines

  1. 3  ONERR  GOTO 10000
  2. 4  LOMEM: 21504: DIM SG$(2,2,1): DIM FI$(50): HOME : PRINT  CHR$(4)"PR#3": PRINT : VTAB 12: HTAB 27: PRINT "Stand by for Main Menu...": PRINT 
  3. 8 SD = 48700:AS =  PEEK(SD):AD =  PEEK(SD +1):S3 = 16384
  4. 10 DS = 6:DN = 1
  5. 11 SG$(0,0,0) = "MN":SG$(0,0,1) = "B$D2D9,L$38E":SG$(0,1,0) = "MN":SG$(0,1,1) = "B$304E,L$357":SG$(0,2,0) = "MN":SG$(0,2,1) = "B$14044,L$378"
  6. 12 SG$(1,0,0) = "M1":SG$(1,0,1) = "B$7A51,L$38E":SG$(1,1,0) = "M0":SG$(1,1,1) = "B$3033,L$357":SG$(1,2,0) = "M1":SG$(1,2,1) = "B$E80C,L$378"
  7. 13 SG$(2,0,0) = "M1":SG$(2,0,1) = "B$7B1D,L$38E":SG$(2,1,0) = "M0":SG$(2,1,1) = "B$3056,L$357":SG$(2,2,0) = "M1":SG$(2,2,1) = "B$E8F9,L$378"
  8. 14 D$ =  CHR$(4):Q$ =  CHR$(34):CL =  -868:CS =  -958: DIM MX$(1):MX$(0) = "misteak":MX$(1) = "mistake": DIM D$(3),B$(3),M$(9): DIM LI$(27):KR = 49168:BL = 48855:HE = 11904:CM = 12544:H = 9:V = 6:C = 25:C8 = 1403:AW$ = "AppleWorks"
  9. 15  POKE 48891, PEEK(116):A1 =  PEEK(1014):A2 =  PEEK(1015): FOR I = 0 TO 9: READ A: POKE 12528 +I,A: NEXT : DATA  104,168,104,166,223,154,72,152,72,96
  10. 20  PRINT D$"-MENUS"
  11. 25  PRINT D$"BLOAD HELP.EDITOR"
  12. 30  REM   PRINT D$"BLOAD OLD.COMP"
  13. 40  PRINT D$"PREFIX": INPUT PFX$:OP$ = "/": FOR I = 2 TO  LEN(PF$) -1: IF  MID$ (PF$,I,1) = "/"  THEN OP$ = PF$: GOTO 50
  14. 45  NEXT 
  15. 50 ITEMS = 5: DIM A$(IT): FOR I = 0 TO ITEMS: READ A$(I): NEXT : FOR I = 0 TO 3: READ B$(I): NEXT : FOR I = 0 TO 9: READ M$(I): NEXT : FOR I = 0 TO 3: READ D$(I): NEXT :D$(1) = "Slot " + STR$(DS) +" Drive " + STR$(DN):UN$ = "Unable to "
  16. 60  VTAB 1: PRINT : VTAB 1: PRINT "MacroWorks";: CALL CL: HTAB 32: PRINT "    MAIN MENU";: POKE C8,69: PRINT "Main.Menu": & RPT,223,79
  17. 80  VTAB 22: PRINT : & RPT,223,79: GOSUB 9950: & BOX,M$(0),4,3,12: FOR U = 1 TO 5: CALL CL: PRINT : NEXT 
  18. 110  & MENU,A$(0),IT,1,H,V,C
  19. 120 X =  PEEK(0):QO = 1: IF X < >IT +1  THEN 140
  20. 125  VTAB 23: PRINT : PRINT "Press  A  for Applesoft or  Esc  to continue";: CALL CL: INVERSE : IF QO = 0  THEN  HTAB 7: PRINT " A ";
  21. 126  IF QO = 1  THEN  HTAB 28: PRINT " Esc ";:
  22. 127  NORMAL : & KEY,23,24:X =  PEEK(0): IF X = 27  OR (X = 13  AND QO = 1)  THEN  GOSUB 9950: GOTO 110
  23. 129  IF X = 8  OR X = 21  THEN QO = 1 -QO: GOTO 125
  24. 130  IF   NOT (X = 65  OR X = 97  OR (X = 13  AND QO = 0))  THEN  & BEEP: GOTO 127
  25. 135  GOSUB 9800: HOME : PRINT  CHR$(21): PRINT : PRINT "TYPE "Q$"RUN"Q$" TO RESTART.": END 
  26. 140  ON X GOTO 5000,900,1000,2000,3000: & BEEP: GOTO 110
  27. 900 X$ = "COMPILER": GOTO 3500
  28. 1000 X$ = "ALPHA.CAT": GOTO 3500
  29. 2000 X$ = "ANALYST": GOTO 3500
  30. 3000 X$ = "GALLEY"
  31. 3500  GOSUB 9800: VTAB 21: PRINT : PRINT D$"-"X$
  32. 5000  VTAB 1: HTAB 31: PRINT " ENHANCE APPLEWORKS";: CALL CL: POKE C8,61: PRINT "Escape: Main Menu": GOSUB 9950
  33. 5010  & BOX,A$(0),7,5,11: FOR U = 1 TO 4: CALL CL: PRINT : NEXT 
  34. 5020  & MENU,B$(0),3,1,H +3,V +3,C:X =  PEEK(0): IF X = 27  THEN 60
  35. 5030  ON X GOTO 6000,900,7000,8000: & BEEP: GOTO 5020
  36. 6000  VTAB 1: HTAB 32: PRINT "INSTALL MACROWORKS";: POKE C8,61: PRINT "Escape: Enhance AW";: CALL CL:I = 1: GOSUB 9900
  37. 6010  VTAB 11: PRINT : HTAB 16: PRINT "This option adds a file called MACRO.SYSTEM to": HTAB 16: PRINT "your "AW$" STARTUP disk. It contains the"
  38. 6020  HTAB 16: PRINT "new MacroWorks commands and macros, and will": HTAB 16: PRINT "automatically take control whenever you boot": HTAB 16: PRINT "up with your modified "AW$" disk."
  39. 6030  PRINT D$"PREFIX"OP$: PRINT D$"BLOAD MACRO.SYSTEM,TSYS,A$3700":LE =  PEEK(48857) +256 * PEEK(48858)
  40. 6040  VTAB 23: PRINT : PRINT "Insert your AppleWorks STARTUP disk; press Return";: CALL CL
  41. 6050  & KEY,26,24:X =  PEEK(0): ON X = 27 GOTO 5000: IF X < >13  THEN  & BEEP: GOTO 6050
  42. 6060 I = 1: GOSUB 9200: GOSUB 9000: IF X = 27  THEN 5000
  43. 6070  PRINT D$"UNLOCK APLWORKS.SYSTEM": PRINT D$"RENAME APLWORKS.SYSTEM,APLWORKS.SYS": GOTO 6090
  44. 6080  PRINT D$"UNLOCK APLWORKS.SYS": PRINT D$"RENAME APLWORKS.SYS,APLWORKS.SYS"
  45. 6090  PRINT D$"CREATE MACRO.SYSTEM,TSYS"
  46. 6100  PRINT D$"BSAVE MACRO.SYSTEM,TSYS,A$3700,L"LE
  47. 6110  VTAB 23: PRINT : PRINT AW$" now has the MacroWorks commands; press a key";: CALL CL: & KEY,29,24: GOTO 60
  48. 7000  VTAB 1: HTAB 32: PRINT "  CUSTOMIZE HELP  ";: POKE C8,61: PRINT "Escape: Enhance AW";: CALL CL
  49. 7001 I = 2: GOSUB 9900: VTAB 9: PRINT : HTAB 16: PRINT "Where is the "AW$" PROGRAM disk?": GOSUB 9000: IF X = 27  THEN 5000
  50. 7015 I = 2: GOSUB 9900: GOSUB 9950
  51. 7020  & MENU,M$(4),7,1,H +6,V +5,C:X =  PEEK(0): IF X = 27  THEN 5000
  52. 7030  IF X = 4  AND OX = 0  THEN  & BEEP: GOTO 7020
  53. 7040  IF X = 4  THEN X = OX: PRINT D$"UNLOCKSEG."SG$(VN,X -1,0): PRINT D$"BSAVE SEG."SG$(VN,X -1,0)",T0,A"PL","SG$(VN,X -1,1): VTAB 23: PRINT : PRINT "New screen saved; press a key";: CALL CL: & KEY,16,24: GOSUB 9950: GOTO 7020
  54. 7060 PL = S3:VN = 0: PRINT D$"VERIFY SEG.MN": PRINT D$"BLOAD SEG.MN,T0,A"PL",B$1402F,L2": ON  PEEK(PL) = 111  AND  PEEK(PL +1) = 119 GOTO 7080:SG$(0,2,1) = "B$14030,L$378": GOTO 7080
  55. 7070 VN = 1: PRINT D$"BLOAD SEG.M1,A$4000,B$36,L2,T0": IF  PEEK(PL) = 24  AND  PEEK(PL +1) = 123  THEN VN = 2
  56. 7080 OX = X: PRINT D$"BLOAD"PF$"SEG."SG$(VN,X -1,0)",T0,A"PL","SG$(VN,X -1,1)
  57. 7100  POKE 5, PEEK(BL): POKE 6, PEEK(BL +1):X = ( PEEK(BL) +256 * PEEK(BL +1)) +( PEEK(BL +2) +256 * PEEK(BL +3)):HI =  INT(X/256):LO = X -HI *256: POKE 7,LO: POKE 8,HI: POKE 9,21:XX = 7
  58. 7110  VTAB 23: PRINT : PRINT "Use up/down arrows to select; press Return to edit";: CALL CL: VTAB 1: POKE C8,61: PRINT "Escape: Customize";: CALL CL
  59. 7120  CALL HE +XX:XX = 4: REM  SELECT
  60. 7130  IF  PEEK(225) = 27  THEN  VTAB 21: PRINT : CALL CL: VTAB 1: POKE C8,61: PRINT "Escape: Enhance AW": GOTO 7015
  61. 7140  VTAB 23: PRINT : PRINT "Enter text; press Return when done";: CALL CL: VTAB 1: POKE C8,61: PRINT "Escape: Select";: CALL CL
  62. 7145  CALL HE +1: POKE 49236,0: GOTO 7110
  63. 8000  VTAB 1: HTAB 32: PRINT "CHANGE ERROR BUZZ";: CALL CL: POKE C8,61: PRINT "Escape: Enhance AW":I = 3: GOSUB 9900
  64. 8010  VTAB 11: PRINT : HTAB 16: PRINT "The "AW$" error buzz can be rather irritating,": HTAB 16: PRINT "especially since you only hear it after mistakes!"
  65. 8020  HTAB 16: PRINT "We would rather hear the pleasant MacroWorks beep.": HTAB 16: PRINT  SPC( 40)
  66. 8030  VTAB 15: PRINT : HTAB 16: PRINT "(Press the space bar if you haven't made a "MX$(MX)" yet.)"
  67. 8040  VTAB 23: PRINT : PRINT "Press Return to switch from buzz to beep";: CALL CL
  68. 8050  & KEY,21,24:X =  PEEK(0): ON X = 27 GOTO 5000: IF X = 32  THEN MX = 1 -MX: & BEEP: GOTO 8030
  69. 8060  IF X < >13  THEN  & BEEP: GOTO 8050
  70. 8070 I = 3: GOSUB 9200:SYS$ = "TEM"
  71. 8080  GOSUB 9000: IF X = 27  THEN 5000
  72. 8090  PRINT D$"BLOAD APLWORKS.SYS"SY$",TSYS,A$4000,B$63D,L$A00"
  73. 8100  VTAB 23: PRINT : PRINT "Installing error beep";: CALL CL:BEEP = S3:PA = 18827: IF  PEEK(BEEP) = 160  AND  PEEK(BEEP +2) = 169  THEN 8130
  74. 8105 BEEP = BE +8:PA = 18838: REM  NOT V1.2
  75. 8110  IF  PEEK(BEEP) < >160  OR  PEEK(BEEP +2) < >169  THEN  VTAB 23: PRINT : PRINT "Unrecognized version of "AW$;: CALL CL: & KEY,18,24: GOTO 5000
  76. 8120  IF  PEEK(PA -1) < >162  THEN PA = 18873: REM  TRY V1.1
  77. 8125  IF  PEEK(PA -1) < >162  THEN  POKE BEEP,0: GOTO 8110
  78. 8130 DA = BEEP +1:FA = BEEP +3: REM  DUR & FREQ
  79. 8140  POKE FA,20: POKE DA,180: POKE PA,50: VTAB 20: PRINT D$"UNLOCKAPLWORKS.SYS"SY$: PRINT D$"BSAVE APLWORKS.SYS"SY$",TSYS,A$4000,B$63D,L$A00": GOSUB 9950: GOTO 5000
  80. 9000  PRINT D$"FRE":Y$ = PF$: GOSUB 9950: VTAB 10: PRINT : HTAB 16: PRINT "Select (1) when 'Current Directory' is correct.": PRINT : POKE C8,39: PRINT PFX$;: PRINT  SPC( 30 - LEN(PF$))
  81. 9030  & MENU,D$(0),3,1,15,13,25:X =  PEEK(0): IF X = 27  THEN  RETURN 
  82. 9040  ON X GOTO 9190,9180,9050,9170: & BEEP: GOTO 9030
  83. 9050  VTAB 14: PRINT : HTAB 24: INVERSE : PRINT " "DS" ";: NORMAL : PRINT : GOSUB 9975
  84. 9060  & KEY,32,24:X =  PEEK(0): IF X = 27  THEN  GOSUB 9950: GOTO 9030
  85. 9070  IF X = 10  THEN DS = DS -1: IF DS = 0  THEN DS = 7
  86. 9080  IF X = 11  THEN DS = DS +1: IF DS = 8  THEN DS = 1
  87. 9085  IF X >48  AND X <56  THEN DS = X -48:X = 13
  88. 9090  IF X = 13  OR X = 21  THEN D$(1) = "Slot " + STR$(DS) +" Drive " + STR$(DN): VTAB 14: PRINT : HTAB 20: PRINT D$(1)" ";: GOTO 9120
  89. 9100  IF X = 10  OR X = 11  THEN 9050
  90. 9110  & BEEP: GOTO 9060
  91. 9120  VTAB 14: PRINT : HTAB 32: INVERSE : PRINT " "DN" ";: NORMAL : PRINT 
  92. 9130  & KEY,32,24:X =  PEEK(0): IF X = 27  OR X = 8  THEN  VTAB 14: PRINT : HTAB 20: PRINT D$(1)" ";: GOTO 9050
  93. 9140  IF X = 10  OR X = 11  THEN DN = 3 -DN: GOTO 9120
  94. 9145  IF X >48  AND X <51  THEN DN = X -48:X = 13
  95. 9150  IF X = 13  THEN  GOSUB 9950:D$(1) = "Slot " + STR$(DS) +" Drive " + STR$(DN): VTAB 14: PRINT : HTAB 20: PRINT D$(1)" ";: GOTO 9180
  96. 9160  & BEEP: GOTO 9130
  97. 9170  VTAB 23: PRINT : PRINT "Type new pathname: /";: CALL CL: &  INPUT X$: ON X$ = "" GOTO 9000:PFX$ = "/" +X$ +"/": PRINT D$"PREFIX"PF$: GOTO 9000
  98. 9180  VTAB 22: PRINT D$"PREFIX,S"DS",D"DN: PRINT D$"PREFIX": INPUT PFX$: GOTO 9000
  99. 9190  RETURN 
  100. 9200  GOSUB 9900: VTAB 9: PRINT : HTAB 16: PRINT "Where is your Macro Master disk?": RETURN 
  101. 9800  POKE 1014,A1: POKE 1015,A2: CALL 48888: POKE SD,AS: POKE SD +1,AD: PRINT D$"PREFIX/": IF OP$ < >"/"  THEN  PRINT D$"PREFIX"OP$
  102. 9805  RETURN 
  103. 9900 I2 = I: & BOX,M$(I),10,7,11: RETURN 
  104. 9925  POKE C8,59: PRINT "   Escape:"B$(XX)
  105. 9950  VTAB 23: PRINT : PRINT "Type number or use arrow keys, then press Return           See Manual for Help";: RETURN 
  106. 9975  VTAB 23: PRINT : PRINT "Use up/down arrow keys to change value; press Return when done";: CALL CL: RETURN 
  107. 10000 ER =  PEEK(222):EL =  PEEK(218) +256 * PEEK(219): CALL 12528
  108. 10005  IF ER = 12  OR ER = 77  THEN  HOME : PRINT "<CTRL-G>INSUFFICIENT MEMORY; PLEASE REBOOT": END 
  109. 10010  IF EL = 20  THEN  PRINT "MENUS";: GOTO 12000
  110. 10020  IF EL = 25  THEN  PRINT "HELP.EDITOR";: GOTO 12000
  111. 10040  IF EL = 3500  THEN  VTAB 23: PRINT : PRINT UN$"find "X$"; press a key to restart ";: CALL CL: GET X$: HOME : RUN 
  112. 10050  IF EL = 6030  THEN  GOSUB 13000: & KEY,21,24: ON  PEEK(0) = 27 GOTO 5000: GOTO 6030
  113. 10060  IF EL = 6070  THEN 6080
  114. 10065  IF EL = 6080  THEN  GOSUB 12100: GOTO 6060
  115. 10068  IF EL = 6090  AND ER = 19  THEN 6100
  116. 10075  IF EL = 6100  THEN  VTAB 23: PRINT : PRINT UN$"save MACRO.SYSTEM";: CALL CL: & KEY,14,24: GOTO 6060
  117. 10079  IF EL = 7060  THEN 7070: GOTO 7060
  118. 10080  IF EL >7000  AND EL <8000  THEN  & BEEP: VTAB 23: PRINT : PRINT "Insert the "AW$" PROGRAM disk now and press a key";: CALL CL: & KEY,29,24: GOTO 7015: GOTO 7070
  119. 10090  IF EL = 8090  AND SYS$ = "TEM"  THEN SYS$ = "": GOTO 8090
  120. 10100  IF EL = 8090  THEN  GOSUB 12100: GOTO 8000
  121. 10110  IF EL = 9170  OR EL = 9180  OR EL = 9510  THEN  & BEEP: VTAB 23: PRINT : PRINT "Unable to find directory; press Return";: CALL CL: & KEY,20,24:PF$ = Y$: GOTO 9000
  122. 10115  IF EL = 9800  THEN  GOSUB 13000: GET X$: GOTO 60
  123. 10120  POKE 216,0: RESUME 
  124. 12000  PRINT " must be on the disk<CTRL-G>": END 
  125. 12100  & BEEP: VTAB 23: PRINT : PRINT "That was not the "AW$" STARTUP disk; press a key";: CALL CL: & KEY,28,24: RETURN 
  126. 13000  VTAB 23: PRINT : PRINT "Insert the MacroWorks disk; press a key ";: CALL CL: RETURN 
  127. 15000  DATA  "Enhance AppleWorks","Use Compiler","Use Alpha.Cat","Use Analyst","Use Galley","Quit" : REM  A
  128. 15100  DATA  "Install Built-In MacroWorks Commands","Compile New Macros","Customize AppleWorks Help Screens" ,"Change Error Buzz to MacroWorks Beep" : REM  B
  129. 15200  DATA  "Main Menu","Install MacroWorks","Customize Help" ,"Change Error Buzz","Change Word Processor","Change Data Base","Change Spreadsheet","Save New Help Info","Read Directory","Compile Macros" : REM  M
  130. 15300  DATA  "Current Directory:","Slot 6 Drive 1","Another Slot and Drive","Another Pathname": REM  D